package pers.jsan.litheopen.security.filter;

import pers.jsan.litheopen.security.exception.LitheAuthenticationException;

import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public interface LitheAuthenticationFilter {

    default void init(FilterConfig filterConfig) throws ServletException {

    }

    void doFilter(HttpServletRequest servletRequest, HttpServletResponse servletResponse, AuthenticationFilterChain filterChain) throws IOException, ServletException, LitheAuthenticationException;

    default void destroy() {
    }
}
